导入 sys
导入 os

sys.path.追加(os.路径.绝对路径(r'G:\grasspy_zwmodules\pywebio\zwpywebio\src'))

从 网页io 导入 启动服务器
从 网页io.输入 导入 *
从 网页io.输出 导入 *
从 网页io.持久输入 导入 *

导入 随机数

套路 主函数():
    输出md('# 猜数字游戏')
    输出md('系统随机生成了 1 到 100 之间的一个整数，你能否猜出它是多少吗？')
    输出md('你最多可以猜 10 次。如果你猜的不对，系统会提示你是猜大了还是猜小了。')
    
    随机整数 = 随机数.随机整数(1, 100)
    打印(随机整数)

    结果 = ''
    次数 = 0

    套路 重置游戏():
        非局部 随机整数
        非局部 次数, 结果
        随机整数 = 随机数.随机整数(1, 100)
        打印(随机整数)
        次数 = 0
        结果 = ''
        持久.猜测值 = 空
        清空('容器1')
        清空('容器2')
        清空('容器3')
        管 使用容器('容器0', 清空=真):
            输出行([
                输出md('猜猜看: ').样式('font-size:x-large'),
                输出输入框('猜测值', 类型='数字'), 空,
                输出按钮('提交', 当点击时=检查猜测值)
            ], 大小='10% 30% 10px')

    套路 禁用容器0():
        管 使用容器('容器0', 清空=真):
            输出行([
                输出md('猜猜看: ').样式('font-size:x-large'),
                输出输入框('猜测值', 类型='数字', 只读=真), 空,
                输出按钮('提交', 当点击时=检查猜测值, 禁用=真)
            ], 大小='10% 30% 10px')

    @使用容器('容器1', 清空=真)
    套路 检查猜测值():
        非局部 结果
        非局部 次数
        猜测值 = 持久.猜测值
        持久.猜测值 = 空

        次数 += 1
        如果 次数 > 5:
            输出消息('你的机会用完了')

            管 使用容器('容器3'):
                输出按钮('再玩一次', 当点击时=重置游戏)
            禁用容器0()
            返回

        管 使用容器('容器2', 清空=真):
            结果 += 字符串型(猜测值) + '  '
            输出文本('你猜的数: ', 结果)

        如果 猜测值 是 空 或 猜测值 < 1 或 猜测值 > 100:
            输出警告消息('你猜的数不合法')
            返回

        如果 猜测值 == 随机整数:
            输出成功消息('恭喜, 你猜对了')
            管 使用容器('容器3'):
                输出按钮('再玩一次', 当点击时=重置游戏)
            禁用容器0()
        否则:
            如果 猜测值 > 随机整数:
                输出错误消息('你猜大了')
            否则:
                输出错误消息('你猜小了')
                # 猜测值 = 输入('请再猜: ')

    管 使用容器('容器0', 清空=真):
        输出行([
            输出md('猜猜看: ').样式('font-size:x-large'),
            输出输入框('猜测值', 类型='数字'), 空,
            输出按钮('提交', 当点击时=检查猜测值)
        ], 大小='10% 30% 10px')


如果 __名称__ == '__主体__':
    启动服务器(主函数, 调试=真, 端口=8080)